package com.ruoyi.swla2.service;

import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.swla2.domain.PgFieldTableInfo;
import com.ruoyi.swla2.domain.PgRowInfo;

public interface IPgEditService {

    /**
     * 连接PostGIS本地数据库并获取表名
     *
     * @return 是否创建成功
     */
    AjaxResult getTableInfo();

    /**
     * 连接PostGIS数据库并获取表数据
     *
     * @return 是否成功
     */
    AjaxResult getTableData(PgFieldTableInfo pgFieldTableInfo);

    /**
     * 连接PostGIS数据库并查询GIS表数据
     *
     * @return 是否成功
     */
    AjaxResult findGisTableData(PgFieldTableInfo pgFieldTableInfo);

    /**
     * 连接PostGIS数据库并查询常规表数据
     *
     * @return 是否成功
     */
    AjaxResult findNormalTableData(PgFieldTableInfo pgFieldTableInfo);

    /**
     * 添加数据
     *
     * @return 是否成功
     */
    AjaxResult addTableData(PgRowInfo pgRowInfo);

    /**
     * 更新数据
     *
     * @return 是否成功
     */
    AjaxResult updateTableData(PgRowInfo pgRowInfo);

    /**
     * 删除数据
     *
     * @return 是否成功
     */
    AjaxResult deleteTableData(PgRowInfo pgRowInfo);

    /**
     * 添加管点数据
     */
    AjaxResult addPointTableData(PgRowInfo pgRowInfo);

    /**
     * 更新管点数据
     */
    AjaxResult updatePointTableData(PgRowInfo pgRowInfo);

    /**
     * 添加管线数据
     */
    AjaxResult addLineTableData(PgRowInfo pgRowInfo);

    /**
     * 更新管线数据
     */
    AjaxResult updateLineTableData(PgRowInfo pgRowInfo);
}
